package net.system.base.bean;

import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class SSysnoticeExample {
    protected String orderByClause;

    protected List oredCriteria;

    public SSysnoticeExample() {
        oredCriteria = new ArrayList();
    }

    protected SSysnoticeExample(SSysnoticeExample example) {
        this.orderByClause = example.orderByClause;
        this.oredCriteria = example.oredCriteria;
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public List getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
    }

    public static class Criteria {
        protected List criteriaWithoutValue;

        protected List criteriaWithSingleValue;

        protected List criteriaWithListValue;

        protected List criteriaWithBetweenValue;

        protected Criteria() {
            super();
            criteriaWithoutValue = new ArrayList();
            criteriaWithSingleValue = new ArrayList();
            criteriaWithListValue = new ArrayList();
            criteriaWithBetweenValue = new ArrayList();
        }

        public boolean isValid() {
            return criteriaWithoutValue.size() > 0
                || criteriaWithSingleValue.size() > 0
                || criteriaWithListValue.size() > 0
                || criteriaWithBetweenValue.size() > 0;
        }

        public List getCriteriaWithoutValue() {
            return criteriaWithoutValue;
        }

        public List getCriteriaWithSingleValue() {
            return criteriaWithSingleValue;
        }

        public List getCriteriaWithListValue() {
            return criteriaWithListValue;
        }

        public List getCriteriaWithBetweenValue() {
            return criteriaWithBetweenValue;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteriaWithoutValue.add(condition);
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            Map map = new HashMap();
            map.put("condition", condition);
            map.put("value", value);
            criteriaWithSingleValue.add(map);
        }

        protected void addCriterion(String condition, List values, String property) {
            if (values == null || values.size() == 0) {
                throw new RuntimeException("Value list for " + property + " cannot be null or empty");
            }
            Map map = new HashMap();
            map.put("condition", condition);
            map.put("values", values);
            criteriaWithListValue.add(map);
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            List list = new ArrayList();
            list.add(value1);
            list.add(value2);
            Map map = new HashMap();
            map.put("condition", condition);
            map.put("values", list);
            criteriaWithBetweenValue.add(map);
        }

        public Criteria andRecIdIsNull() {
            addCriterion("REC_ID is null");
            return this;
        }

        public Criteria andRecIdIsNotNull() {
            addCriterion("REC_ID is not null");
            return this;
        }

        public Criteria andRecIdEqualTo(String value) {
            addCriterion("REC_ID =", value, "recId");
            return this;
        }

        public Criteria andRecIdNotEqualTo(String value) {
            addCriterion("REC_ID <>", value, "recId");
            return this;
        }

        public Criteria andRecIdGreaterThan(String value) {
            addCriterion("REC_ID >", value, "recId");
            return this;
        }

        public Criteria andRecIdGreaterThanOrEqualTo(String value) {
            addCriterion("REC_ID >=", value, "recId");
            return this;
        }

        public Criteria andRecIdLessThan(String value) {
            addCriterion("REC_ID <", value, "recId");
            return this;
        }

        public Criteria andRecIdLessThanOrEqualTo(String value) {
            addCriterion("REC_ID <=", value, "recId");
            return this;
        }

        public Criteria andRecIdLike(String value) {
            addCriterion("REC_ID like", value, "recId");
            return this;
        }

        public Criteria andRecIdNotLike(String value) {
            addCriterion("REC_ID not like", value, "recId");
            return this;
        }

        public Criteria andRecIdIn(List values) {
            addCriterion("REC_ID in", values, "recId");
            return this;
        }

        public Criteria andRecIdNotIn(List values) {
            addCriterion("REC_ID not in", values, "recId");
            return this;
        }

        public Criteria andRecIdBetween(String value1, String value2) {
            addCriterion("REC_ID between", value1, value2, "recId");
            return this;
        }

        public Criteria andRecIdNotBetween(String value1, String value2) {
            addCriterion("REC_ID not between", value1, value2, "recId");
            return this;
        }

        public Criteria andSnTitleIsNull() {
            addCriterion("sn_title is null");
            return this;
        }

        public Criteria andSnTitleIsNotNull() {
            addCriterion("sn_title is not null");
            return this;
        }

        public Criteria andSnTitleEqualTo(String value) {
            addCriterion("sn_title =", value, "snTitle");
            return this;
        }

        public Criteria andSnTitleNotEqualTo(String value) {
            addCriterion("sn_title <>", value, "snTitle");
            return this;
        }

        public Criteria andSnTitleGreaterThan(String value) {
            addCriterion("sn_title >", value, "snTitle");
            return this;
        }

        public Criteria andSnTitleGreaterThanOrEqualTo(String value) {
            addCriterion("sn_title >=", value, "snTitle");
            return this;
        }

        public Criteria andSnTitleLessThan(String value) {
            addCriterion("sn_title <", value, "snTitle");
            return this;
        }

        public Criteria andSnTitleLessThanOrEqualTo(String value) {
            addCriterion("sn_title <=", value, "snTitle");
            return this;
        }

        public Criteria andSnTitleLike(String value) {
            addCriterion("sn_title like", value, "snTitle");
            return this;
        }

        public Criteria andSnTitleNotLike(String value) {
            addCriterion("sn_title not like", value, "snTitle");
            return this;
        }

        public Criteria andSnTitleIn(List values) {
            addCriterion("sn_title in", values, "snTitle");
            return this;
        }

        public Criteria andSnTitleNotIn(List values) {
            addCriterion("sn_title not in", values, "snTitle");
            return this;
        }

        public Criteria andSnTitleBetween(String value1, String value2) {
            addCriterion("sn_title between", value1, value2, "snTitle");
            return this;
        }

        public Criteria andSnTitleNotBetween(String value1, String value2) {
            addCriterion("sn_title not between", value1, value2, "snTitle");
            return this;
        }

        public Criteria andSnContentIsNull() {
            addCriterion("sn_content is null");
            return this;
        }

        public Criteria andSnContentIsNotNull() {
            addCriterion("sn_content is not null");
            return this;
        }

        public Criteria andSnContentEqualTo(String value) {
            addCriterion("sn_content =", value, "snContent");
            return this;
        }

        public Criteria andSnContentNotEqualTo(String value) {
            addCriterion("sn_content <>", value, "snContent");
            return this;
        }

        public Criteria andSnContentGreaterThan(String value) {
            addCriterion("sn_content >", value, "snContent");
            return this;
        }

        public Criteria andSnContentGreaterThanOrEqualTo(String value) {
            addCriterion("sn_content >=", value, "snContent");
            return this;
        }

        public Criteria andSnContentLessThan(String value) {
            addCriterion("sn_content <", value, "snContent");
            return this;
        }

        public Criteria andSnContentLessThanOrEqualTo(String value) {
            addCriterion("sn_content <=", value, "snContent");
            return this;
        }

        public Criteria andSnContentLike(String value) {
            addCriterion("sn_content like", value, "snContent");
            return this;
        }

        public Criteria andSnContentNotLike(String value) {
            addCriterion("sn_content not like", value, "snContent");
            return this;
        }

        public Criteria andSnContentIn(List values) {
            addCriterion("sn_content in", values, "snContent");
            return this;
        }

        public Criteria andSnContentNotIn(List values) {
            addCriterion("sn_content not in", values, "snContent");
            return this;
        }

        public Criteria andSnContentBetween(String value1, String value2) {
            addCriterion("sn_content between", value1, value2, "snContent");
            return this;
        }

        public Criteria andSnContentNotBetween(String value1, String value2) {
            addCriterion("sn_content not between", value1, value2, "snContent");
            return this;
        }

        public Criteria andSnIspubIsNull() {
            addCriterion("sn_ispub is null");
            return this;
        }

        public Criteria andSnIspubIsNotNull() {
            addCriterion("sn_ispub is not null");
            return this;
        }

        public Criteria andSnIspubEqualTo(String value) {
            addCriterion("sn_ispub =", value, "snIspub");
            return this;
        }

        public Criteria andSnIspubNotEqualTo(String value) {
            addCriterion("sn_ispub <>", value, "snIspub");
            return this;
        }

        public Criteria andSnIspubGreaterThan(String value) {
            addCriterion("sn_ispub >", value, "snIspub");
            return this;
        }

        public Criteria andSnIspubGreaterThanOrEqualTo(String value) {
            addCriterion("sn_ispub >=", value, "snIspub");
            return this;
        }

        public Criteria andSnIspubLessThan(String value) {
            addCriterion("sn_ispub <", value, "snIspub");
            return this;
        }

        public Criteria andSnIspubLessThanOrEqualTo(String value) {
            addCriterion("sn_ispub <=", value, "snIspub");
            return this;
        }

        public Criteria andSnIspubLike(String value) {
            addCriterion("sn_ispub like", value, "snIspub");
            return this;
        }

        public Criteria andSnIspubNotLike(String value) {
            addCriterion("sn_ispub not like", value, "snIspub");
            return this;
        }

        public Criteria andSnIspubIn(List values) {
            addCriterion("sn_ispub in", values, "snIspub");
            return this;
        }

        public Criteria andSnIspubNotIn(List values) {
            addCriterion("sn_ispub not in", values, "snIspub");
            return this;
        }

        public Criteria andSnIspubBetween(String value1, String value2) {
            addCriterion("sn_ispub between", value1, value2, "snIspub");
            return this;
        }

        public Criteria andSnIspubNotBetween(String value1, String value2) {
            addCriterion("sn_ispub not between", value1, value2, "snIspub");
            return this;
        }

        public Criteria andRecUpdatetimeIsNull() {
            addCriterion("REC_UPDATETIME is null");
            return this;
        }

        public Criteria andRecUpdatetimeIsNotNull() {
            addCriterion("REC_UPDATETIME is not null");
            return this;
        }

        public Criteria andRecUpdatetimeEqualTo(Date value) {
            addCriterion("REC_UPDATETIME =", value, "recUpdatetime");
            return this;
        }

        public Criteria andRecUpdatetimeNotEqualTo(Date value) {
            addCriterion("REC_UPDATETIME <>", value, "recUpdatetime");
            return this;
        }

        public Criteria andRecUpdatetimeGreaterThan(Date value) {
            addCriterion("REC_UPDATETIME >", value, "recUpdatetime");
            return this;
        }

        public Criteria andRecUpdatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("REC_UPDATETIME >=", value, "recUpdatetime");
            return this;
        }

        public Criteria andRecUpdatetimeLessThan(Date value) {
            addCriterion("REC_UPDATETIME <", value, "recUpdatetime");
            return this;
        }

        public Criteria andRecUpdatetimeLessThanOrEqualTo(Date value) {
            addCriterion("REC_UPDATETIME <=", value, "recUpdatetime");
            return this;
        }

        public Criteria andRecUpdatetimeIn(List values) {
            addCriterion("REC_UPDATETIME in", values, "recUpdatetime");
            return this;
        }

        public Criteria andRecUpdatetimeNotIn(List values) {
            addCriterion("REC_UPDATETIME not in", values, "recUpdatetime");
            return this;
        }

        public Criteria andRecUpdatetimeBetween(Date value1, Date value2) {
            addCriterion("REC_UPDATETIME between", value1, value2, "recUpdatetime");
            return this;
        }

        public Criteria andRecUpdatetimeNotBetween(Date value1, Date value2) {
            addCriterion("REC_UPDATETIME not between", value1, value2, "recUpdatetime");
            return this;
        }

        public Criteria andEnabledIsNull() {
            addCriterion("ENABLED is null");
            return this;
        }

        public Criteria andEnabledIsNotNull() {
            addCriterion("ENABLED is not null");
            return this;
        }

        public Criteria andEnabledEqualTo(String value) {
            addCriterion("ENABLED =", value, "enabled");
            return this;
        }

        public Criteria andEnabledNotEqualTo(String value) {
            addCriterion("ENABLED <>", value, "enabled");
            return this;
        }

        public Criteria andEnabledGreaterThan(String value) {
            addCriterion("ENABLED >", value, "enabled");
            return this;
        }

        public Criteria andEnabledGreaterThanOrEqualTo(String value) {
            addCriterion("ENABLED >=", value, "enabled");
            return this;
        }

        public Criteria andEnabledLessThan(String value) {
            addCriterion("ENABLED <", value, "enabled");
            return this;
        }

        public Criteria andEnabledLessThanOrEqualTo(String value) {
            addCriterion("ENABLED <=", value, "enabled");
            return this;
        }

        public Criteria andEnabledLike(String value) {
            addCriterion("ENABLED like", value, "enabled");
            return this;
        }

        public Criteria andEnabledNotLike(String value) {
            addCriterion("ENABLED not like", value, "enabled");
            return this;
        }

        public Criteria andEnabledIn(List values) {
            addCriterion("ENABLED in", values, "enabled");
            return this;
        }

        public Criteria andEnabledNotIn(List values) {
            addCriterion("ENABLED not in", values, "enabled");
            return this;
        }

        public Criteria andEnabledBetween(String value1, String value2) {
            addCriterion("ENABLED between", value1, value2, "enabled");
            return this;
        }

        public Criteria andEnabledNotBetween(String value1, String value2) {
            addCriterion("ENABLED not between", value1, value2, "enabled");
            return this;
        }

        public Criteria andRecStatusIsNull() {
            addCriterion("REC_STATUS is null");
            return this;
        }

        public Criteria andRecStatusIsNotNull() {
            addCriterion("REC_STATUS is not null");
            return this;
        }

        public Criteria andRecStatusEqualTo(String value) {
            addCriterion("REC_STATUS =", value, "recStatus");
            return this;
        }

        public Criteria andRecStatusNotEqualTo(String value) {
            addCriterion("REC_STATUS <>", value, "recStatus");
            return this;
        }

        public Criteria andRecStatusGreaterThan(String value) {
            addCriterion("REC_STATUS >", value, "recStatus");
            return this;
        }

        public Criteria andRecStatusGreaterThanOrEqualTo(String value) {
            addCriterion("REC_STATUS >=", value, "recStatus");
            return this;
        }

        public Criteria andRecStatusLessThan(String value) {
            addCriterion("REC_STATUS <", value, "recStatus");
            return this;
        }

        public Criteria andRecStatusLessThanOrEqualTo(String value) {
            addCriterion("REC_STATUS <=", value, "recStatus");
            return this;
        }

        public Criteria andRecStatusLike(String value) {
            addCriterion("REC_STATUS like", value, "recStatus");
            return this;
        }

        public Criteria andRecStatusNotLike(String value) {
            addCriterion("REC_STATUS not like", value, "recStatus");
            return this;
        }

        public Criteria andRecStatusIn(List values) {
            addCriterion("REC_STATUS in", values, "recStatus");
            return this;
        }

        public Criteria andRecStatusNotIn(List values) {
            addCriterion("REC_STATUS not in", values, "recStatus");
            return this;
        }

        public Criteria andRecStatusBetween(String value1, String value2) {
            addCriterion("REC_STATUS between", value1, value2, "recStatus");
            return this;
        }

        public Criteria andRecStatusNotBetween(String value1, String value2) {
            addCriterion("REC_STATUS not between", value1, value2, "recStatus");
            return this;
        }

        public Criteria andRecPersonIsNull() {
            addCriterion("REC_PERSON is null");
            return this;
        }

        public Criteria andRecPersonIsNotNull() {
            addCriterion("REC_PERSON is not null");
            return this;
        }

        public Criteria andRecPersonEqualTo(String value) {
            addCriterion("REC_PERSON =", value, "recPerson");
            return this;
        }

        public Criteria andRecPersonNotEqualTo(String value) {
            addCriterion("REC_PERSON <>", value, "recPerson");
            return this;
        }

        public Criteria andRecPersonGreaterThan(String value) {
            addCriterion("REC_PERSON >", value, "recPerson");
            return this;
        }

        public Criteria andRecPersonGreaterThanOrEqualTo(String value) {
            addCriterion("REC_PERSON >=", value, "recPerson");
            return this;
        }

        public Criteria andRecPersonLessThan(String value) {
            addCriterion("REC_PERSON <", value, "recPerson");
            return this;
        }

        public Criteria andRecPersonLessThanOrEqualTo(String value) {
            addCriterion("REC_PERSON <=", value, "recPerson");
            return this;
        }

        public Criteria andRecPersonLike(String value) {
            addCriterion("REC_PERSON like", value, "recPerson");
            return this;
        }

        public Criteria andRecPersonNotLike(String value) {
            addCriterion("REC_PERSON not like", value, "recPerson");
            return this;
        }

        public Criteria andRecPersonIn(List values) {
            addCriterion("REC_PERSON in", values, "recPerson");
            return this;
        }

        public Criteria andRecPersonNotIn(List values) {
            addCriterion("REC_PERSON not in", values, "recPerson");
            return this;
        }

        public Criteria andRecPersonBetween(String value1, String value2) {
            addCriterion("REC_PERSON between", value1, value2, "recPerson");
            return this;
        }

        public Criteria andRecPersonNotBetween(String value1, String value2) {
            addCriterion("REC_PERSON not between", value1, value2, "recPerson");
            return this;
        }

        public Criteria andRecTimeIsNull() {
            addCriterion("REC_TIME is null");
            return this;
        }

        public Criteria andRecTimeIsNotNull() {
            addCriterion("REC_TIME is not null");
            return this;
        }

        public Criteria andRecTimeEqualTo(Date value) {
            addCriterion("REC_TIME =", value, "recTime");
            return this;
        }

        public Criteria andRecTimeNotEqualTo(Date value) {
            addCriterion("REC_TIME <>", value, "recTime");
            return this;
        }

        public Criteria andRecTimeGreaterThan(Date value) {
            addCriterion("REC_TIME >", value, "recTime");
            return this;
        }

        public Criteria andRecTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("REC_TIME >=", value, "recTime");
            return this;
        }

        public Criteria andRecTimeLessThan(Date value) {
            addCriterion("REC_TIME <", value, "recTime");
            return this;
        }

        public Criteria andRecTimeLessThanOrEqualTo(Date value) {
            addCriterion("REC_TIME <=", value, "recTime");
            return this;
        }

        public Criteria andRecTimeIn(List values) {
            addCriterion("REC_TIME in", values, "recTime");
            return this;
        }

        public Criteria andRecTimeNotIn(List values) {
            addCriterion("REC_TIME not in", values, "recTime");
            return this;
        }

        public Criteria andRecTimeBetween(Date value1, Date value2) {
            addCriterion("REC_TIME between", value1, value2, "recTime");
            return this;
        }

        public Criteria andRecTimeNotBetween(Date value1, Date value2) {
            addCriterion("REC_TIME not between", value1, value2, "recTime");
            return this;
        }

        public Criteria andRecUpdatepersonIsNull() {
            addCriterion("REC_UPDATEPERSON is null");
            return this;
        }

        public Criteria andRecUpdatepersonIsNotNull() {
            addCriterion("REC_UPDATEPERSON is not null");
            return this;
        }

        public Criteria andRecUpdatepersonEqualTo(String value) {
            addCriterion("REC_UPDATEPERSON =", value, "recUpdateperson");
            return this;
        }

        public Criteria andRecUpdatepersonNotEqualTo(String value) {
            addCriterion("REC_UPDATEPERSON <>", value, "recUpdateperson");
            return this;
        }

        public Criteria andRecUpdatepersonGreaterThan(String value) {
            addCriterion("REC_UPDATEPERSON >", value, "recUpdateperson");
            return this;
        }

        public Criteria andRecUpdatepersonGreaterThanOrEqualTo(String value) {
            addCriterion("REC_UPDATEPERSON >=", value, "recUpdateperson");
            return this;
        }

        public Criteria andRecUpdatepersonLessThan(String value) {
            addCriterion("REC_UPDATEPERSON <", value, "recUpdateperson");
            return this;
        }

        public Criteria andRecUpdatepersonLessThanOrEqualTo(String value) {
            addCriterion("REC_UPDATEPERSON <=", value, "recUpdateperson");
            return this;
        }

        public Criteria andRecUpdatepersonLike(String value) {
            addCriterion("REC_UPDATEPERSON like", value, "recUpdateperson");
            return this;
        }

        public Criteria andRecUpdatepersonNotLike(String value) {
            addCriterion("REC_UPDATEPERSON not like", value, "recUpdateperson");
            return this;
        }

        public Criteria andRecUpdatepersonIn(List values) {
            addCriterion("REC_UPDATEPERSON in", values, "recUpdateperson");
            return this;
        }

        public Criteria andRecUpdatepersonNotIn(List values) {
            addCriterion("REC_UPDATEPERSON not in", values, "recUpdateperson");
            return this;
        }

        public Criteria andRecUpdatepersonBetween(String value1, String value2) {
            addCriterion("REC_UPDATEPERSON between", value1, value2, "recUpdateperson");
            return this;
        }

        public Criteria andRecUpdatepersonNotBetween(String value1, String value2) {
            addCriterion("REC_UPDATEPERSON not between", value1, value2, "recUpdateperson");
            return this;
        }

        public Criteria andSnTypeIsNull() {
            addCriterion("sn_type is null");
            return this;
        }

        public Criteria andSnTypeIsNotNull() {
            addCriterion("sn_type is not null");
            return this;
        }

        public Criteria andSnTypeEqualTo(String value) {
            addCriterion("sn_type =", value, "snType");
            return this;
        }

        public Criteria andSnTypeNotEqualTo(String value) {
            addCriterion("sn_type <>", value, "snType");
            return this;
        }

        public Criteria andSnTypeGreaterThan(String value) {
            addCriterion("sn_type >", value, "snType");
            return this;
        }

        public Criteria andSnTypeGreaterThanOrEqualTo(String value) {
            addCriterion("sn_type >=", value, "snType");
            return this;
        }

        public Criteria andSnTypeLessThan(String value) {
            addCriterion("sn_type <", value, "snType");
            return this;
        }

        public Criteria andSnTypeLessThanOrEqualTo(String value) {
            addCriterion("sn_type <=", value, "snType");
            return this;
        }

        public Criteria andSnTypeLike(String value) {
            addCriterion("sn_type like", value, "snType");
            return this;
        }

        public Criteria andSnTypeNotLike(String value) {
            addCriterion("sn_type not like", value, "snType");
            return this;
        }

        public Criteria andSnTypeIn(List values) {
            addCriterion("sn_type in", values, "snType");
            return this;
        }

        public Criteria andSnTypeNotIn(List values) {
            addCriterion("sn_type not in", values, "snType");
            return this;
        }

        public Criteria andSnTypeBetween(String value1, String value2) {
            addCriterion("sn_type between", value1, value2, "snType");
            return this;
        }

        public Criteria andSnTypeNotBetween(String value1, String value2) {
            addCriterion("sn_type not between", value1, value2, "snType");
            return this;
        }
    }
}